package com.java.simple.smallspring.aop;

import lombok.Getter;
import lombok.Setter;
import org.aopalliance.intercept.MethodInterceptor;

/**
 * @author zhoujunlin
 * @date 2022年09月10日 16:19
 * @desc 主要用于把代理、拦截、匹配的各项属性包装到一个类中  方便Proxy实现类进行调用
 * 这和你的业务开发中包装入参是一个道理
 */
@Setter
@Getter
public class AdvisedSupport {

    private boolean proxyTargetClass = false;
    /**
     * 被代理的目标对象
     */
    private TargetSource targetSource;
    /**
     * 方法拦截器 cglib  jdk代理增强
     */
    private MethodInterceptor methodInterceptor;
    /**
     * 方法匹配器  由AspectJExpressionPointcut提供服务
     */
    private MethodMatcher methodMatcher;

}
